import numpy as np
from tensorflow import keras

# Генерация обучающих данных
x_train = np.random.rand(10000)  # Случайные числа от 0 до 1
y_train = x_train ** 2  # Возведение чисел в квадрат

# Создание модели
model = keras.Sequential([
    keras.layers.Dense(64, activation='relu', input_shape=(1,)),
    keras.layers.Dense(64, activation='relu'),
    keras.layers.Dense(1)
])

# Компиляция модели
model.compile(optimizer='adam', loss='mse')

# Обучение модели
model.fit(x_train, y_train, epochs=10, batch_size=32)

# Тестирование модели на новом числе
x_test = np.array([0.5])  # Число для возведения в квадрат
y_pred = model.predict(x_test)
print("Квадрат числа", x_test[0], "приблизительно равен", y_pred[0][0])
print("Квадрат числа", x_test[0], "равен", x_test[0]** 2)